Algorithm

Assume:

  • finite sum structure: f(š±)=āˆ‘i=1nfi(š±)f(\mathbf{x}) = \sum_{i=1}^n f_i(\mathbf{x}), with f1,...,fnf_1, ..., f_n all convex
  • Lipschitz functions: for all š±,j,ā€–āˆ‡fj(š±)‖2≤G′n\mathbf{x}, j, \lVert \nabla f_j (\mathbf{x}) \rVert_2 \leq \frac{G'}{n}
    • what does this imply about Lipschitz constant of ff?
  • Starting radius: ||š±āˆ—āˆ’š±(1)||2≤R||\mathbf{x}^{*}-\mathbf{x}^{(1)}||_2 \leq R

Gradient descent:

  • Choose š±(1)\mathbf{x}^{(1)}, steps TT, and step size Ī·=RGT\eta = \frac{R}{G \sqrt{T}}.
  • For i=1,...,Ti = 1, ..., T:
    • Pick random ji∈1,...,nj_i \in 1,...,n
    • š±(i+1)=š±(i)āˆ’Ī·āˆ‡fji(š±(i))\mathbf{x}^{(i+1)} = \mathbf{x}^{(i)} - \eta \nabla f_{j_i}(\mathbf{x}^{(i)})
  • Return š±Ė†=1Tāˆ‘i=1Tš±(i)\hat{\mathbf{x}} = \frac{1}{T}\sum_{i=1}^T \mathbf{x}^{(i)}

Overview

  • Efficient offline optimization method for functions ff with finite sum structure:f(š±)=āˆ‘i=1nfi(š±)f(\mathbf{x})=\sum_{i=1}^n f_i(\mathbf{x})
  • Goal is to find š±Ė†\hat{\mathbf{x}} such that f(š±Ė†)≤f(š±āˆ—)+ϵf(\hat{\mathbf{x}}) \leq f(\mathbf{x}^*) + \epsilon.
  • Approach: view as online gradient descent run on function sequence fj1,...,fjTf_{j_1},...,f_{j_T}.
  • Only use the fact that step equals gradient in expectation.
  • this is adapted from gradient descent, compare

SGD convergence

After T=R2G’2ϵ2T=\frac{R^2 G’^2}{\epsilon^2} iterations,

š”¼[f(š±Ė†)āˆ’f(š±āˆ—)]≤ϵ\mathbb{E}[f(\hat{\mathbf{x}})-f(\mathbf{x}^*)] \leq \epsilon

proof: use Jensen's inequality


References:

  1. https://www.chrismusco.com/amlds2023/lectures/lec8_annotated.pdf
  2. https://web.stanford.edu/class/ee270/scribes/lecture16.pdf
  3. Anna Choromanska. ECE-GY 7143 course slides, lecture 2.
  4. http://yanran.li/peppypapers/2015/04/11/speed-of-mini-batch-sgd.html